﻿
namespace Mjolnir.Modelo.Matrizes
{
  public interface IServicoMatriz
  {
    /// <summary>
    /// Criar uma array.
    /// </summary>
    /// <param name="tamanho">tamanho.</param>
    /// <returns></returns>
    Matriz[] criarArray(int linhas, int colunas, int tamanho);

    /// <summary>
    /// Setar o valor.
    /// </summary>
    /// <param name="valor">valor.</param>
    void setarValor(double[,] valor);

    /// <summary>
    /// Setar o valor.
    /// </summary>
    /// <param name="valor">valor.</param>
    void setarValor(Matriz valor);

    /// <summary>
    /// Obter o valor.
    /// </summary>
    /// <param name="valor">valor.</param>
    void obterValor(ref double[,] valor);

    /// <summary>
    /// Inverso da fonte especificada.
    /// </summary>
    /// <param name="fonte">fonte.</param>
    /// <returns></returns>
    bool inverso(Matriz fonte);
  }
}